package br.ufpb.di.ppgi.negocio.iservicos;

import java.util.List;

import br.ufpb.di.ppgi.negocio.modelo.aluno.Aluno;
import br.ufpb.di.ppgi.persistencia.pagination.ListaPaginada;

public interface IAlunoService extends IService{

	public abstract void adicionar(Aluno Aluno);

	public abstract Aluno apagar(Long id);

	public abstract Aluno atualizar(Aluno Aluno);

	public abstract Aluno buscar(Long id);

	public abstract List<Aluno> listar();

	public abstract List<Aluno> listarMeusOrientandosQuePodemEnviarProposta(Long id);

	public abstract boolean cpfJaExiste(String cpf);

	public abstract ListaPaginada<Aluno> filtrarPaginando(String key, Integer page, String base);

	public abstract ListaPaginada<Aluno> filtrarPaginandoMeusOrientando(Long id,String key, Integer page, String base);

	public abstract Aluno findByCPF(String cpf);
	
}